<?php
Header::set_title("Ajouter un scan");
Header::set_css("toolbox/uploadify/uploadify.css");
Header::set_src_javascript("toolbox/uploadify/jquery-1.3.2.min.js");
Header::set_src_javascript("toolbox/uploadify/swfobject.js");
Header::set_src_javascript("toolbox/uploadify/jquery.uploadify.v2.1.0.min.js");

if(Form::get('nomserie') != "") 
$lien = "Scan/".Form::get('nomserie')."/".Form::get('nomtome');
else 
$lien = "";


Header::set_javascript("// <![CDATA[
$(document).ready(function() {
$('#fileInput').uploadify({
'uploader':  'toolbox/uploadify/uploadify.swf',
'script':    'toolbox/uploadify/uploadify.php',
'folder':    '".$lien."',
'cancelImg': 'toolbox/uploadify/cancel.png',
'wmode' : 'transparent',
'width' : 300,
'queueID' : 'fileQueue',
'multi' : true,
'auto' : true,
'fileDesc' : '*.jpg;*.png;*.jpeg',
'fileExt' : '*.jpg;*.png;*.jpeg',
'buttonText' : 'Parcourir',
'onAllComplete' : function() {
alert(\"Upload terminé...Redirection vers la page d\'accueil\");
window.location.replace('index.php'); }
});
}); // ]]
");

require_once(CLASSES."/Scan.class.php");
require_once(CLASSES."/Archives.class.php");

if(isset($_GET['upload'])) traitement_images();
elseif(isset($_GET['traitement'])) traitement_zip();
else {switch ( Form::get('action') ){

	case 'valide':
		traitement();
		break;
	default:
		afficheform();
		break;
	}
}

function afficheform(){
	if(Session::IsOpen('membre')) include 'form-saisie.php';
	else Site::message_info("Vous n'êtes pas connecté");
}


function traitement() {
	if( Form::get('nomserie')=='' || Form::get('genre')==''||Form::get('auteur')=='' || Form::get('type')==''){
		
		Site::message_info("Tous les champs obligatoires n'ont pas été saisis".print_r($_POST,true));
		afficheform();	
		
	}else if(Session::IsOpen('membre')) {
		
		//On remplace les caractères accentués par leurs équivalent sans accent car le script d'upload en javascript n'est pas compatible utf-8
		Form::set('nomserie', str_replace ("é","e", Form::get('nomserie')));
		Form::set('nomserie', str_replace ("è","e", Form::get('nomserie')));
		Form::set('nomserie', str_replace ("ê","e", Form::get('nomserie')));
		Form::set('nomserie', str_replace ("ç","c", Form::get('nomserie')));
		Form::set('nomserie', str_replace ("à","a", Form::get('nomserie')));
		Form::set('nomserie', str_replace ("ä","a", Form::get('nomserie')));
		Form::set('nomserie', str_replace ("ë","e", Form::get('nomserie')));
		Form::set('nomserie', str_replace ("ö","o", Form::get('nomserie')));
		Form::set('nomserie', str_replace ("ô","o", Form::get('nomserie')));
		Form::set('nomserie', str_replace ("ù","u", Form::get('nomserie')));
		Form::set('nomserie', str_replace ("ü","u", Form::get('nomserie')));
		Form::set('nomserie', str_replace ("û","u", Form::get('nomserie')));
		Form::set('nomserie', str_replace ("î","i", Form::get('nomserie')));
		Form::set('nomserie', str_replace ("ï","i", Form::get('nomserie')));
		Form::set('nomserie', str_replace ("'","", Form::get('nomserie')));
		Form::set('nomserie', str_replace ("\"","", Form::get('nomserie')));
		Form::set('nomserie', str_replace ("_","", Form::get('nomserie')));
		
		Form::set('nomtome', str_replace ("é","e", Form::get('nomtome')));
		Form::set('nomtome', str_replace ("è","e", Form::get('nomtome')));
		Form::set('nomtome', str_replace ("ê","e", Form::get('nomtome')));
		Form::set('nomtome', str_replace ("ç","c", Form::get('nomtome')));
		Form::set('nomtome', str_replace ("à","a", Form::get('nomtome')));
		Form::set('nomtome', str_replace ("ä","a", Form::get('nomtome')));
		Form::set('nomtome', str_replace ("ë","e", Form::get('nomtome')));
		Form::set('nomtome', str_replace ("ö","o", Form::get('nomtome')));
		Form::set('nomtome', str_replace ("ô","o", Form::get('nomtome')));
		Form::set('nomtome', str_replace ("ù","u", Form::get('nomtome')));
		Form::set('nomtome', str_replace ("ü","u", Form::get('nomtome')));
		Form::set('nomtome', str_replace ("û","u", Form::get('nomtome')));
		Form::set('nomtome', str_replace ("î","i", Form::get('nomtome')));
		Form::set('nomtome', str_replace ("ï","i", Form::get('nomtome')));
		Form::set('nomtome', str_replace ("'","", Form::get('nomtome')));
		Form::set('nomtome', str_replace ("\"","", Form::get('nomtome')));
		Form::set('nomtome', str_replace ("_","", Form::get('nomtome')));
		
		
		
		
		switch(Scan::CheckScan(Form::get('nomserie'), Form::get('nomtome'),Form::get('notome'),Form::get('auteur'),Form::get('type'),Form::get('genre'))) {
		case 0 :
			$scan = new Scan();
			$scan->Create(Form::get('nomserie'), Form::get('notome'), Form::get('nomtome'), Session::Info('membre','pseudo'), time(), Form::get('resume'), Form::get('type'), Form::get('genre'), Form::get('auteur'), "Scan/".Form::get('nomserie')."/".Form::get('nomtome')."/");
			
			$scan->Save();
			Site::message_info("Scan enregistré ! Veuillez uploader les images/ archives zip");
			
			// On créer les dossiers
			$lien = "Scan/".Form::get('nomserie')."/".Form::get('nomtome');
			
			if(!is_dir("Scan/".Form::get('nomserie')))	//Regarde si le dossier existe
			mkdir("Scan/".Form::get('nomserie'), 0777); 		//on créer le dossier
			

			
			mkdir($lien); //on créer le sous dossier
			
			//$scan->PutInSession($scan);			
			Session::Open('scan', $scan);
			include "upload.php";
			Session::Shutdown('scan');
			//Site::redirect("index.php?module=".$_GET['module']."&upload");
			break;
			/*case 1 :
				Site::message_info("Le nom de la série est invalide");
				afficheform();
				break;
			case 2 :
				Site::message_info("Le nom du tome est invalide");
				afficheform();
				break;
			case 3 :
				Site::message_info("L'auteur est invalide");
				afficheform();
				break;
			case 4 :
				Site::message_info("Le type est invalide");
				afficheform();
				break;
			case 5 :
				Site::message_info("Le genre est invalide");
				afficheform();
				break;*/
		case 6 :
			Site::message_info("Le scan existe déjà");
			Form::Set("nomserie", ""); //si erreur on retire les infos dans les input
			Form::Set("nomtome", "");
			Form::Set("notome", "");
			Form::Set("auteur", "");
			afficheform();
			break;
		case 7 :
			Site::message_info("Le numéro tome est invalide");
			Form::Set("notome", "");
			afficheform();
			break;
		}
		
	} else { Site::message_info("Vous n'êtes pas connecté");
		afficheform(); }


}

function traitement_images() {
	include "upload.php";
}


function traitement_zip() {
	//if (Session::IsOpen('scan')) {
	if (Form::get('nomserie') != "") {
		if (isset($_FILES['fichier'])) {
			if ($_FILES['fichier']['error'] != 0) {
				Site::message("Une erreure s'est produite. Veuillez recommencer.");
			}
			elseif($_FILES['fichier']['size'] <= 31457280 ) { //inf à 20mo

				$extention = strtolower(  substr(  strrchr($_FILES['fichier']['name'], '.')  ,1)  );
				
				switch($extention) {
				case "zip" :
					if(move_uploaded_file($_FILES['fichier']['tmp_name'],"Scan/".Form::get('nomserie')."/".Form::get('nomtome')."/".Form::get('nomtome').".zip")) {
						if(!Archives::zip2jpg("Scan/".Form::get('nomserie')."/".Form::get('nomtome')."/".Form::get('nomtome').".zip", "Scan/".Form::get('nomserie')."/".Form::get('nomtome')))
						Site::message("Erreur : extraction du zip s'est mal passé");
					} else Site::message("Erreur : le mouvement du fichier à échouer");
					break;
					default :
					Site::message_info("Mauvaise extention - Upload annulé");
					Site::redirect("index.php");
				}
				
				unlink("Scan/".Form::get('nomserie')."/".Form::get('nomtome')."/".Form::get('nomtome').".zip");
				
				
				Site::message_info("Upload terminé");
				Site::redirect("index.php");
				
			} else Site::message("Erreur : Fichier trop volumineux");
		} else Site::message("Erreur : pas de fichier à transferer");
		
	} else Site::message_info("Erreur : pas de fichier à uploader");
}


?>
